to another unary operator and a binary operator can only be

to another binary operator. For instance, the RPN string for the

ݔݕ൅√ݖ is xy*z#+ suppose the # key is used to represent the

ot operation. If by a mistake, a unary operator is mutated to a

perator or a binary operator is mutated to a unary operator, the

tree means nothing. Figure 8.12 shows such a mistake. Certainly,

ion expressed in Figure 8.12(b) will not be working.

(a) (b)

The tree with a unary operator. (a) The original tree. (b) The tree with wrongly

erator. The mutated token is in the box with the dark background.

he dual-chromosome crossover

nd one to be considered is the crossover operator. In GP, the

r operation can be done in two ways. One is the single-

ome crossover (or the self-crossover) and the other is the dual-

ome crossover. A dual-chromosome crossover operation employs

RPN chromosomes to generate two new RPN chromosomes. The

randomly selects subunits from two elite RPN chromosomes.

ds, the operation exchanges subunits across two elite RPN

omes to breed two new chromosomes.

n two elite RPN chromosomes, two subunits (two subtrees) are

y selected, one from each RPN chromosome. They are thus

To do this crossover operation, it is necessary to re-organise

e RPN chromosome. Each selected elite RPN chromosome is

into three segments, which are denoted by ߬, ߠ and ߩ. The

on the left side of a selected subunit is denoted by ߬. The selected

egment is denoted by ߠ. The segment on the right side of a